package com.example.spider.spider.session;

import com.example.spider.proxy.core.ProxyInfo;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

import java.util.Date;
import java.util.Map;

/**
 * 客户端会话信息
 */
@Getter
@Setter
@Accessors(chain = true)
public class ClientSession {

    /**
     * 会话标识
     */
    private String id;

    /**
     * key : v
     */
    private Map<String, String> headers;

    /**
     * domain : {key : v}
     */
    private Map<String, Map<String, String>> cookie;

    /**
     * 黏着在哪个ip
     */
    private ProxyInfo proxyInfo;

    /**
     * 最近一次请求时间
     */
    private Date lastRequestTime;

    /**
     * 最近一次请求结果
     */
    private String response;

    /**
     * 本次会话请求成功数目
     */
    private Long successCount;

    /**
     * 本次会话请求失败数目
     */
    private Long failCount;

    /**
     * 本次会话总请求数目
     */
    private Long totalCount;

}
